package com.example.tpl.system.service;

import com.example.tpl.system.util.Result;
import com.example.tpl.system.util.ResultPage;
import com.example.tpl.system.vo.common.DeleteBatchReqVo;
import com.example.tpl.system.vo.common.QueryDetailReqVo;
import com.example.tpl.system.vo.common.UpdateStatusReq;
import com.example.tpl.system.vo.req.DictDataReqVo;
import com.example.tpl.system.vo.req.QueryDictDataReqVo;
import com.example.tpl.system.vo.resp.DictDataRespVo;

/**
 * 描述：字典数据
 * 作者：刘飞华
 * 日期：2025/01/13 17:57:36
 */
public interface DictDataService {

    /**
     * 添加字典数据
     *
     * @param dictData 请求参数
     * @return int
     * @author 刘飞华
     * @date: 2025/01/13 17:57:36
     */
    Result<Integer> addDictData(DictDataReqVo dictData);

    /**
     * 删除字典数据
     *
     * @param dictData 请求参数
     * @return int
     * @author 刘飞华
     * @date: 2025/01/13 17:57:36
     */
    Result<Integer> deleteDictData(DeleteBatchReqVo dictData);

    /**
     * 更新字典数据
     *
     * @param dictData 请求参数
     * @return int
     * @author 刘飞华
     * @date: 2025/01/13 17:57:36
     */
    Result<Integer> updateDictData(DictDataReqVo dictData);

    /**
     * 更新字典数据状态
     *
     * @param dictData 请求参数
     * @return int
     * @author 刘飞华
     * @date: 2025/01/13 17:57:36
     */
    Result<Integer> updateDictDataStatus(UpdateStatusReq dictData);

    /**
     * 查询字典数据详情
     *
     * @param dictData 请求参数
     * @return DictDataResp
     * @author 刘飞华
     * @date: 2025/01/13 17:57:36
     */
    Result<DictDataRespVo> queryDictDataDetail(QueryDetailReqVo dictData);

    /**
     * 查询字典数据列表
     *
     * @param dictData 请求参数
     * @return ResultPage<DictDataResp>
     * @author 刘飞华
     * @date: 2025/01/13 17:57:36
     */
    Result<ResultPage<DictDataRespVo>> queryDictDataList(QueryDictDataReqVo dictData);

}